# 24.07.02——牛客网在线编程
# Python入门——内置函数——18题

# 题目1：min函数与max函数
# 列表的最值运算——中等
# 描述
# 牛牛给了牛妹一个一串无规则的数字，牛妹将其转换成列表后，使用max和min函数快速的找到了这些数字的最值，你能用Python代码实现一下吗？
# 输入描述：
# 输入一行多个整数，数字之间以空格间隔。
# 输出描述：
# 输出这些数字的zui zhi
# 示例1
# 输入：
# 3 5 6 9 10 6 2
# 输出：
# 10
# 2

num_list = input().split()
for i in range(len(num_list)):
    num_list[i] = int(num_list[i])
print(max(num_list))
print(min(num_list))

# 题目2：sum函数
# 朋友的年龄和——简单
# 描述
# 牛牛想知道自己小组内的同事们的年龄和都有多少，他输入一串年龄序列，请将其转换成列表，并使用sum函数直接获取列表的和。
# 输入描述：
# 一行输入多个正整数，以空格间隔。
# 输出描述：
# 输出求和。
# 示例1
# 输入：
# 25 26 27 24
# 输出：
# 102

age_list = input().split()
for i in range(len(age_list)):
    age_list[i] = int(age_list[i])
print(sum(age_list))

# 题目3：abs函数
# 正数输出器——简单
# 描述
# 牛牛想要这样一个程序，只要是输入一个整数，不管正负，它一定转换为正数，即获取该数字的绝对值，你能用abs函数实现吗？
# 输入描述：
# 输入一个非零整数。
# 输出描述：
# 输出该数字的绝对值。
# 示例1
# 输入：
# -1
# 输出：
# 1

num = int(input())
print(abs(num))

# 题目4：ord函数
# 字母转数字——简单
# 描述
# 牛牛刚学习了ASCII码，他知道计算机中的字母很多用的都是这个编码方式，现在输入一个字母，你能使用ord函数将其转换为ASCII码对应的数字吗？
# 输入描述：
# 输入一个字符，仅包含大小写字母。
# 输出描述：
# 输出该字母在ASCII中对应的数字。
# 示例1
# 输入：
# a
# 输出：
# 97

print(ord(input()))

# 题目5：hex函数
# 数字的十六进制——简单
# 描述
# 牛妹刚学习进制转换，对这方面掌控还不太熟练，她想请你帮她写一个十进制到十六进制的进制转换器，你能使用hex函数帮助她完成这个任务吗？
# 输入描述：
# 输入一个正整数。
# 输出描述：
# 输出该正整数的十六进制。
# 示例1
# 输入：
# 11
# 输出：

# 0xb
num = int(input())
print(hex(num))

# 题目6：bin函数
# 数字的二进制表示——简单
# 描述
# 计算机内部都由二进制组成，但是早就习惯使用十进制的牛牛根本不知道这个数字的二进制是什么，你能使用bin函数帮助他将十进制数字转换成二进制吗？
# 输入描述：
# 输入一个十进制正整数。
# 输出描述：
# 输出该数字的二进制形式。
# 示例1
# 输入：
# 16
# 输出：
# 0b10000

print(bin(int(input())))

# 题目7：pow函数
# 数学幂运算——简单
# 描述
# 在Python中，除了使用两个乘号相连外，还能使用pow函数表示幂运算。
# 现牛牛输入正整数x与y，请你使用两种方法分别计算xy与yx。
# 输入描述：
# 一行输入两个正整数，以空格间隔。
# 输出描述：
# 分别两行输出计算xy与yx
# 示例1
# 输入：
# 3 4
# 输出：
# 81
# 64

num_list = input().split()
num_list[0] = int(num_list[0])
num_list[1] = int(num_list[1])
print(pow(num_list[0], num_list[1]))
print(pow(num_list[1], num_list[0]))

# 题目8：list.count()方法
# 错误出现的次数——简单
# 描述
# 在牛客网内部使用1标记正确回答的题，使用0表示回答错误的题。牛牛拿到自己的作答记录是一串01序列，他想知道自己一共答错了多少次，你能将这串序列转换为列表，使用count函数帮助牛牛统计一下吗？
# 输入描述：
# 输入一行数组序列，数字只包含0和1，以空格间隔。
# 输出描述：
# 输出0出现的次数。
# 示例1
# 输入：
# 1 0 0 0 1 0 1
# 输出：
# 4

num_list = input().split()
for i in range(len(num_list)):
    num_list[i] = int(num_list[i])
print(num_list.count(0))

# 题目9：List index()方法
# 列表中第一次出现的位置——简单
# 描述
# 牛客网有一个打卡系统，记录了每个人这一个星期上班打卡的记录（以名字的形式）。牛牛想知道自己在这一个星期是第几个打卡的人，你用将这份名字记录转换为列表，然后使用index函数找到'NiuNiu'的位置吗？
# 输入描述：
# 输入一行字符串表示打卡人的姓名，以空格间隔，字符串中必定有'NiuNiu'。
# 输出描述：
# 输出'NiuNiu'第一次打卡是第几个，从0开始计数。
# 示例1
# 输入：
# NiuMei NiuNiu Niukele Tom NiuNiu Tom
# 输出：
# 1

name_list = input().split()
print(name_list.index('NiuNiu'))

# 题目10：isalpha、isdigit、isspace——字符串方法
# 字符的类型比较——简单
# 描述
# Python有内置函数isalpha、isdigit、isspace可以分别判断字符串是否只包含字母、数字、空格，现在输入一个字符串，请分别输出这三个函数的判断结果。
# 输入描述：
# 输入一个字符串。
# 输出描述：
# 分三行依次输出上述三个函数的判断结果。
# 示例1
# 输入：
# NiuMei
# 输出：
# True
# False
# False

my_str = input()
print(my_str.isalpha())
print(my_str.isdigit())
print(my_str.isspace())

# 题目11：find()方法
# 字符子串的查找——简单
# 描述
# 牛客网公布中奖信息了，中奖信息是一个很长的字符串，牛牛想知道自己的名字（'NiuNiu'）有没有出现在其中，你能帮助他使用字符串的find函数查找一下吗？
# 输入描述：
# 输入一个长字符串long_str表示中奖信息。
# 输出描述：
# 输出'NiuNiu'在long_str中第一次出现的位置，没有则输出-1.
# 示例1
# 输入：
# NiuNiu won the prize!
# 输出：
# 0

my_str = input()
print(my_str.find('NiuNiu'))

# 题目12：str count方法
# 子串的数量——中等
# 描述
# 牛客网喜欢'Niu'这个词，各个地方的称号、标语都会出现。现在给你一定长字符串patten，你能使用count函数找到'Niu'在其中出现的次数吗？
# 输入描述：
# 输入一行字符串patten。
# 输出描述：
# 输出'Niu'在patten中出现的次数，为非负数。
# 示例1
# 输入：
# IamNiuNiuFromNiuKeWang
# 输出：
# 3

print(input().count('Niu'))

# 题目13：str split方法
# 句子拆分——中等
# 描述
# 英文句子都是由单词之间通过空格间隔而组成，牛牛想知道一句英语句子里面包含有哪些单词，你能使用split函数将它们全部按照空格分割，记录进列表中吗，请输出列表。
# 输入描述：
# 输入一行字符串，仅包含空格和大小写字母。
# 输出描述：
# 输出分割后的单词列表，不必去重。
# 示例1
# 输入：
# Python is the best language
# 输出：
# ['Python', 'is', 'the', 'best', 'language']

print(input().split())

# 题目14：str join方法
# 单词造句——中等
# 描述
# 牛牛在和牛妹做一个游戏，牛牛给定了牛妹一些单词字符串，他想让牛妹把这些单词拼接成以空格间隔开的句子，很可惜牛妹Python没有学好，你能使用join函数帮帮她吗？
# 输入描述：
# 多行输入多个字符串，每行一个单词，最后一个输入为0时结束。
# 输出描述：
# 输出多个单词组成的句子。
# 示例1
# 输入：
# I
# am
# NiuNiu
# 0
# 输出：
# I am NiuNiu

str_list = []
while True:
    my_str = input()
    if my_str == '0':
        break
    str_list.append(my_str)
print(' '.join(str_list))

# 题目15：str replace方法
# 修正错误的字母——中等
# 描述
# 牛客网在录入用户名字信息发生了错误，所有的字符子串'ab'都被录成'a*'，运营同学急坏了。你能使用Python字符串的replace函数，将名字信息中的'a*'全部修改回'ab'吗？
# 输入描述：
# 输入一个字符串表示录入的用户名字，其中必定包括子串'a*'。
# 输出描述：
# 输出全部替换后的字符串。
# 示例1
# 输入：
# a*andon
# 输出：
# abandon

my_str = input()
print(my_str.replace('a*','ab'))

# 题目16：round函数
# 小数位修正——简单
# 牛客网的财务同学很苦恼，各个部门提交的资料中关于金额的小数保留简直是乱七八糟，
# 你能使用round函数，帮助财务同学将输入数字的小数位修正为四舍五入保留至最多两位小数吗？
# （请不要使用字符串格式化输出保留小数位）
# 输入描述：
# 输入一个正小数。
# 输出描述：
# 输出该小数的四舍五入保留至最多两位小数后的结果。
# 示例1
# 输入：
# 3.145
# 输出：
# 3.15
# 示例2
# 输入：
# 3.1
# 输出：
# 3.1

float_num = float(input())
print(round(float_num, 2))

# 题目17：eval函数
# 公式计算器——中等
# 描述
# 牛牛听说Python中有一个很神奇的函数eval()，只要输入的字符串是一个公式，它能够直接计算这个公式的值。
# 现牛牛以字符串地形式输入一个公式，请你使用eval()计算结果。
# 输入描述：
# 以字符串的形式输入公式，包括加减乘幂四种运算，数字都是整数，有正有负有零。
# 输出描述：
# 直接输出计算结果。
# 示例1
# 输入：
# 3 * 7
# 输出：
# 21
# 示例2
# 输入：
# pow(2, 2)
# 输出：
# 4

print(eval(input()))

# 题目18：
# 创建集合——中等
# 描述
# 某公司内部报名年会活动，因为是匿名报名，有的同事可能偷偷“帮助”别人报名了，导致一个名字出现多次。
# 后台营运同学希望你能用set函数将这些名字记录为一个集合，以到达去重的目的，
# 请输出这些名字创建的集合，输出的时候使用sorted函数对集合排序。
# 输入描述：
# 一行输入多个字符串表示报名的名字，以空格间隔。
# 输出描述：
# 输出这些报名名字组成的集合。
# 示例1
# 输入：
# NiuNiu NiuNiu NiuMei NiuNiu
# 输出：
# ['NiuMei', 'NiuNiu']

name_set = set(input().split())
sorted_set = sorted(name_set)
print(sorted_set)
